This invention relates to interactive television program guides, and more particularly, to techniques for providing real-time data to supplement the program listings data used in interactive television program guides.
Interactive television program guides allow television users to view television program listings on their televisions. Program guides also allow users to display program listings in various formats, to perform genre-based searches for programs of interest, to order pay-per-view programs, etc. Interactive program guides are typically implemented on microprocessor-based set-top boxes. Program listings data is transmitted to the set-top boxes from a centralized data distribution facility via the user""s cable system headend. The program listings data is typically stored in a database in the set-top box, where it may be accessed by the interactive program guide.
Much of the program listings information displayed on the user""s television is fairly static. The titles and scheduled broadcast times for most television programs do not change once they have been established. However, some of the information that may be presented in the program guide may be dynamic. For example, sports scores may be presented in the program guide next to the program titles for certain sports events. This type of information changes frequently. If real-time data on sports scores is provided to the program guide, the guide may continually display up-to-the-minute scores with the program listings in real time. Data services that use real-time information such as news services may also be provided. A program guide system that provides some of these real-time data services is described in U.S. Pat. No. 5,589,892. Although the system of the ""892 patent is in many respects satisfactory, it would be desirable to be able to provide a program guide system with a number of improvements.
In view of the foregoing, it is an object of the present invention to provide a program guide system that allows real-time data such as sports scores to be stored in the database maintained on the user""s set-top box or other suitable program guide platform. At a later time (e.g., after the conclusion of a sporting event), the scores may be retrieved and displayed by the program guide.
It is also an object of the present invention to provide a program guide system that allows updated program listings information to be provided using the same data path as the real-time data.
It is also an object of the present invention to provide a program guide system in which unique keys may be generated to facilitate the matching of real-time data entries and the program listings with which they are associated.
It is also an object of the present invention to provide a program guide system that displays a controllable ticker containing real-time information on the user""s display screen on top of a television program.
It is also an object of the present invention to provide a program guide system in which real-time data is stored by the program guide in a database and in which different expiration times may be established for different types of stored real-time data.
These and other objects of the invention are accomplished in accordance with the principles of the present invention by providing an interactive television program guide system in which an interactive television program guide is implemented on user television equipment or other suitable platform such as a client-server based arrangement. In a client-server arrangement, the program guide is partially implemented on a server and partially implemented on a client. Server functions may be performed by the portion of the program guide that is implemented on a central server and client functions may be performed by the portion of the program guide that is implemented on the user television equipment. The user television equipment may be based on a set-top box or other suitable platform and may contain a videocassette recorder for recording television programs and a television.
A main facility contains a program guide database in which program listings data is stored. The program listings data contains program titles, broadcast times, and other suitable television program schedule information that may be displayed for the user by the program guide. The program listings data is distributed to multiple television distribution facilities, each of which distributes the program listings data to the user television equipment of multiple users.
A source of real-time data, which may be either one or more real-time data sources or a real-time data collection facility that receives data from real-time data sources provides real-time data to the television distribution facilities. The real-time data may contain sports scores for games in progress, current news, current financial or weather information, etc. Each television distribution facility may distribute the real-time data to the program guides associated with that television distribution facility.
The program listings data and the real-time data may be stored in a database maintained by the program guide. The database may be located on the user television equipment, on a server on which at least part of the program guide is implemented, or a combination of such locations or other suitable location. If desired, the program guide may access the stored real-time data after the conclusion of a live event with which the data was originally associated.
Updated program schedule information may be provided to the program guide implemented on the user television equipment or other platform as part of the real-time data stream from the source of real-time data. This data distribution path is particularly suitable for program listings updates of the type that might naturally occur at the source of real-time data. For example, if the scheduled time for a game changes due to a weather delay, information concerning the delay may be most readily obtained at the source of real-time data. Because the game delay affects the scheduled broadcast time of that game, the game delay is of the type of program listings data that may be provided to the program guide as part of the real-time data stream.
In order to match each item of real-time data for a live event with the corresponding program listings data for that event, a key generator is used at both the main facility and the source of real-time data. The key generator at the main facility generates a unique key for each program listing based on attributes of the program listing such as start date, start time, category of event, etc. The key generator at the source of real-time data generates a unique key for each item of real-time data associated with an event using the same algorithm as the key generator at the main facility. The keys that are generated at the main facility are distributed to the program guide implemented on the user television equipment or other suitable platform with their associated program listings data. Similarly, the keys that are generated at the source of real-time data are distributed to the program guide with their associated real-time data. At the user television equipment or other suitable platform, the keys for the program listings are compared to the keys for the real-time data. Program listings are matched with real-time data based on which keys match.
A controllable ticker may be displayed on the user""s television display screen. The controllable ticker contains a user-selectable category and a user-selectable status information item. Illustrative categories that may be selected by the user include different sports or sports leagues, etc. Illustrative status information items that may be selected by the user include games in the selected category. The controllable ticker may be displayed on a user""s screen on top of a television program.
The user may use right and left cursor keys or any other suitable user interface to change the category for the controllable ticker. When the user changes the category for the controllable ticker the controllable ticker may display the most recently viewed status information item for that category or the first status information item for that category.
The user may set up preferences for different categories and status information items. For example, the user may set up a favorite category as being the sport xe2x80x9cbaseball.xe2x80x9d The user may invoke a favorites mode in which the categories displayed in the controllable ticker are limited to categories that satisfy the user""s preferences. The user may also switch between different categories using a special remote control button such as a xe2x80x9cfavoritesxe2x80x9d button that directs the controllable ticker to display only categories that satisfy the user""s preferences. A television icon may be provided with the status information item when the status information item relates to a television program that is available on the user television equipment. The user may direct the program guide to record programs from the controllable ticker or may direct the program guide to tune to the channel associated with a selected status information item from the controllable ticker. The user may also set reminders from the controllable ticker and may purchase pay television programs from the controllable ticker.
The real-time data stored in the database maintained by the program guide may be periodically purged from the database. The system may assign different expiration times to different types of data. For example, game preview information may be removed from the database 15 minutes after a game starts. Several types of real-time data may be removed from the database at a daily rollover time (e.g., 7:00 AM). Other suitable expiration times may be established to handle data types such as game recaps, score updates, event updates, league scores, league schedules, team notes, etc.
Further features of the invention, its nature and various advantages will be more apparent from the accompanying drawings and the following detailed description of the preferred embodiments.